In recent years, networks such as the Internet and mobile networks have been distributed widely, and the terminals may utilize application programs involving data transmission/reception everywhere. Among these, there is a cloud computing technique in which resources are accessed on a network using a high speed and broadband line on the Internet. For example, in the cloud computing, each terminal accesses and processes an application program that operates with the resources on the cloud which is accessible by all subordinate terminals. In recent years, devices connected to a network have spread to vehicles, household electrical appliances, and even the daily necessities, and a large amount of data are being transmitted to communication lines. Therefore, due to the data transmission/reception by the terminals, situations where the line bandwidth is pressed often occur.
Therefore, in order to reduce the delay of access from a mobile station to an application, there has been proposed a technique in which an application is placed not on a cloud but on an edge server, and the edge server provides the mobile station with a low delay service. Here, the edge server refers to a server located near a mobile terminal, such as a server arranged for each area connected to the cloud. In a case of a mobile network such as LTE (Long Term Evolution), for example, the edge server is located near a base station.
An application installed in an edge server in a mobile network accommodates mobile stations such as plural mobile terminals. That is, the application installed in the edge server receives an access from plural mobile stations and performs a process according to a request. In such a system, it is common that the application has plural state holding processes which hold the state of each mobile station.
The mobile station receives a service from an application operating on the nearest low delay edge server. Therefore, when the edge server of a service provider is switched as the mobile station moves, the movement of the mobile station is detected and a state holding process of the moved mobile station is moved to an edge server serving as a new service provider. Then, the edge server serving as the new service provider uses the acquired state holding process of the mobile station to provide the service to mobile stations that has continuously moved in.
As a technique for migrating a process of an application to another machine, there is a technique in the related art that is called process migration in which a memory image of the entire process is acquired and transmitted as it is and is restored on a memory of a destination machine. Further, as a technique of this process migration, there is a technique in the related art in which a copy of a process is transmitted, the process is executed at a transmission source, and the execution record is reproduced after completion of the transmission to achieve synchronization. For example, in a case of Linux® OS (Operating System), process migration is implemented using a command called CRIU (Checkpoint Restart in Userspace).
Related techniques are disclosed in, for example, Japanese Laid-open Patent Publication Nos. 2004-088200, and 2004-078465.